home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 September / PCWSEP07.iso / Software / Linux / Linux Mint 3.0 Light / LinuxMint-3.0-Light.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.20-15-generic / scripts / bin2c.c < prev    next >
Encoding:
C/C++ Source or Header  |  2007-04-12  |  702 b   |  37 lines

  1. /*
  2.  * Unloved program to convert a binary on stdin to a C include on stdout
  3.  *
  4.  * Jan 1999 Matt Mackall <mpm@selenic.com>
  5.  *
  6.  * This software may be used and distributed according to the terms
  7.  * of the GNU General Public License, incorporated herein by reference.
  8.  */
  9.  
  10. #include <stdio.h>
  11.  
  12. int main(int argc, char *argv[])
  13. {
  14.     int ch, total=0;
  15.  
  16.     if (argc > 1)
  17.         printf("const char %s[] %s=\n",
  18.             argv[1], argc > 2 ? argv[2] : "");
  19.  
  20.     do {
  21.         printf("\t\"");
  22.         while ((ch = getchar()) != EOF)
  23.         {
  24.             total++;
  25.             printf("\\x%02x",ch);
  26.             if (total % 16 == 0)
  27.                 break;
  28.         }
  29.         printf("\"\n");
  30.     } while (ch != EOF);
  31.  
  32.     if (argc > 1)
  33.         printf("\t;\n\nconst int %s_size = %d;\n", argv[1], total);
  34.  
  35.     return 0;
  36. }
  37.